#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
#define MAX 1024

void remove(int*& _a, int _m, int _n)
{
	int* tem = new int[_n];
	int ret = _n - _m;
	int i = 0;
	for (i = 0; i < _m; i++)
	{
		tem[i] = _a[i+ret];
	}
	for (i = _m; i < _n; i++)
	{
		tem[i] = _a[i-_m];
	}
	delete[] _a;
	_a = tem;
}

int main()
{
	int n,m;
	cin >> n ;
	int i = 0;
	int* a=new int[MAX];
	for (i = 0; i < n; i++)
	{
		cin >> a[i];
	}
	cin >> m;
	remove(a, m, n);
	
	for (i = 0; i < n; i++)
	{
		cout << a[i] << " ";
	}
	cout << endl;
	delete[] a;
	return 0;
}

//#include <iostream>
//using namespace std;
//
//#define MAX 1024
//
//void remove(int*& _a, int _m, int _n)
//{
//    int* tem = new int[_n];
//    int ret = _n - _m;
//    for (int i = 0; i < ret; i++)
//    {
//        tem[i] = _a[i + _m];
//    }
//    for (int i = ret; i < _n; i++)
//    {
//        tem[i] = _a[i - ret];
//    }
//    int* temp = _a;
//    _a = tem;
//    delete[] temp;
//}
//
//int main()
//{
//    int n, m;
//    cin >> n;
//    int* a = new int[MAX];
//    for (int i = 0; i < n; i++)
//    {
//        cin >> a[i];
//    }
//    cin >> m;
//    remove(a, m, n);
//
//    for (int i = 0; i < n; i++)
//    {
//        cout << a[i] << " ";
//    }
//    cout << endl;
//
//    delete[] a;
//    return 0;
//}